﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ModelDesignEduse.TableProjection;

namespace ModelDesignEduse.Framework
{
    public class Database
    {
        public static Database Instance
        {
            get
            {
                if (_instance == null)
                {
                    _instance = new Database();
                }

                return _instance;
            }
            set
            {
                _instance = value;
            }
        }
        
        private Database()
        {
        }

        private static Database _instance;

        public List<Index> indices = new List<Index>();
        public List<Element> elements = new List<Element>();
        public List<ElementType> elementTypes = new List<ElementType>();
        public List<ElementName> elementNames = new List<ElementName>();
        public List<Page> pages = new List<Page>();
        public List<PageType> pageTypes = new List<PageType>();
        public List<PageTypeCategory> pageTypeCategories = new List<PageTypeCategory>();
        public List<PageField> pageFields = new List<PageField>();
        public List<MediaObject> mediaObjects = new List<MediaObject>();
        public List<PageMediaObject> pageMediaObjects = new List<PageMediaObject>();
        public List<MediaType> mediaTypes = new List<MediaType>();
        public List<MediaObjectContent> mediaObjectContents = new List<MediaObjectContent>();
        public List<Language> languages = new List<Language>();
        public List<IndexText> indexTexts = new List<IndexText>();
        public List<IndexCompletion> indexCompletions = new List<IndexCompletion>();
        public List<Client> clients = new List<Client>();
    }
}
